with interfaces.c; use interfaces.c;
with Interfaces.C.Strings; use Interfaces.C.Strings;

    --======================================
    -- DECLARATION DES PRAGMAS VERS C
    --======================================

package interface_c is

   function creerStandard return Integer;
   pragma Import (CPP, creerStandard,"creerStandard");

   function connecter (std : Integer; n : Integer)return Integer;
   pragma Import (CPP, connecter, "connecter");

   procedure deconnecter(std : Integer; n : Integer);
   pragma Import (CPP, deconnecter, "deconnecter");

   procedure demanderCommunication(std : Integer;
                                   num : Integer;
                                   host : out String;
                                   port : out Positive);
   pragma Import (CPP, demanderCommunication, "demanderCommunication");

   procedure fermerCommunication(std : Integer; port : Positive);
   pragma Import (CPP, fermerCommunication, "fermerCommunication");

   function abonnerClient(id_std : Integer;
                           adresse : chars_ptr ;
                           estMobile : boolean;
                           repActif : boolean;
                           messActif : boolean;
                           transfertActif : boolean;
                           numTransfert : Integer;
                           abonnement : Integer;
                           infoComptable : chars_ptr)
                           return Integer;
   pragma Import (CPP, abonnerClient, "abonnerClient");

   procedure modifierAbonnement(id_std : Integer;
                                num : Integer;
                                adresse : chars_ptr ;
                           	estMobile : boolean;
	                        repActif : boolean;
        	                messActif : boolean;
	                        transfertActif : boolean;
        	                numTransfert : Integer;
                	        abonnement : Integer;
                        	infoComptable : chars_ptr);
   pragma Import (CPP, modifierAbonnement, "modifierAbonnement");

end interface_c;
